package day01.BigDecimal类;

import java.math.BigDecimal;

/**
 * @author feng
 * @Date 2022/1/4 10:34
 * 大数的小数操作
 * ROUND_CEILING    //向正无穷方向舍入
 * ROUND_DOWN    //向零方向舍入
 * ROUND_FLOOR    //向负无穷方向舍入
 * ROUND_HALF_DOWN    //向（距离）最近的一边舍入，除非两边（的距离）是相等,如果是这样，向下舍入, 例如1.55 保留一位小数结果为1.5
 * ROUND_HALF_EVEN    //向（距离）最近的一边舍入，除非两边（的距离）是相等,如果是这样，如果保留位数是奇数，使用ROUND_HALF_UP，如果是偶数，使用ROUND_HALF_DOWN
 * ROUND_HALF_UP    //向（距离）最近的一边舍入，除非两边（的距离）是相等,如果是这样，向上舍入, 1.55保留一位小数结果为1.6,也就是我们常说的“四舍五入”
 * ROUND_UNNECESSARY    //计算结果是精确的，不需要舍入模式
 * ROUND_UP    //向远离0的方向
 */
public class Test1 {
    public static void main(String[] args) {
        BigDecimal bigDecimal1 = new BigDecimal("12.15153");
        BigDecimal bigDecimal2 = new BigDecimal("22.4500");
        //计算完成之后，可以将大数转换成为double类型的数据
        System.out.println(bigDecimal1.add(bigDecimal2).doubleValue());
        //指定保留小数
        System.out.println(bigDecimal2.divide(bigDecimal1, 2, BigDecimal.ROUND_HALF_UP));


    }
}
